Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libsForQt5.plasmaMobileGear: 21.08 -> 22.04 #153329

Merged
merged 6 commits into from
May 17, 2022

Conversation

dotlambda
Copy link
Member

@dotlambda dotlambda commented Jan 3, 2022

Motivation for this change

https://plasma-mobile.org/2021/12/07/plasma-mobile-gear-21-12/
https://plasma-mobile.org/2022/02/09/plasma-mobile-gear-22-02/
https://plasma-mobile.org/2022/04/26/plasma-mobile-gear-22-04/

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.05 Release Notes (or backporting 21.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

cc @NixOS/qt-kde

@ofborg ofborg bot added 8.has: clean-up 8.has: package (new) This PR adds a new package labels Jan 3, 2022
@ofborg ofborg bot requested a review from SCOTT-HAMILTON January 3, 2022 13:34
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 11-100 labels Jan 3, 2022
@samueldr
Copy link
Member

samueldr commented Jan 3, 2022

The reason @mjlbach @peterhoeg are pinged is because neochat is being adopted into the Plasma Mobile Gear release cycle.

@samueldr
Copy link
Member

samueldr commented Jan 3, 2022

Checked:

  • Plasma Mobile in Mobile NixOS VM
  • Alligator works
  • Angelfish works
  • (cannot test audio) AudioTube returns results
  • Calculator calculates
  • Calindori starts (seems to work)
  • Clock clocks
  • (cannot test audio) Kasts returns results and downloads podcasts
  • Keysmith seems to work
  • Koko works fine
  • KTrip has black bars at the bottom, but seems to work otherwise? Whatever caused them is gone.
  • Phone errors with Modem devices are not found, but otherwise seems to act the part
  • Phonebook seems okay
  • (cannot test) Recorder seems to want to work
  • Spacebar, like Phone, can't be used in the VM, but acts the part
  • Weather works

@veprbl veprbl changed the base branch from staging-next to master January 12, 2022 06:58
@dotlambda dotlambda force-pushed the plasma-mobile-gear-21.12 branch from 97705c7 to 21fab01 Compare January 28, 2022 00:04
@samueldr
Copy link
Member

samueldr commented Jan 28, 2022

Building against the last good nixos-unstable c07b471

Huh, things were working 25 days ago... but now for plasma5Packages.spacebar:

CMake Error at CMakeLists.txt:37 (find_package):
  By not providing "FindQCoro.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "QCoro", but
  CMake did not find one.

  Could not find a package configuration file provided by "QCoro" with any of
  the following names:

    QCoroConfig.cmake
    qcoro-config.cmake

  Add the installation prefix of "QCoro" to CMAKE_PREFIX_PATH or set
  "QCoro_DIR" to a directory containing one of the above files.  If "QCoro"
  provides a separate development package or SDK, be sure it has been
  installed.

Reverting 5c09fe1 fixes the build; I must suspect the benign upgrade changed something in the packaging of qcoro.


Cause of the issues:

No relevant fix in spacebar yet.


Not an appropriate fix, but breadcrumbs to fix:

diff --git a/pkgs/applications/plasma-mobile/spacebar.nix b/pkgs/applications/plasma-mobile/spacebar.nix
index 24e2f6f4715..f1ad3b3b646 100644
--- a/pkgs/applications/plasma-mobile/spacebar.nix
+++ b/pkgs/applications/plasma-mobile/spacebar.nix
@@ -38,6 +38,12 @@ mkDerivation rec {
     qtquickcontrols2
   ];
 
+  # https://github.com/danvratil/qcoro/commit/8df72d3ac347615980fa5100c6f5a205bbb72b8d
+  postPatch = ''
+    sed -i -e 's;QCoro REQUIRED;QCoro5 REQUIRED COMPONENTS Core Network DBus;g' CMakeLists.txt
+    sed -i -e 's;QCoro::QCoro;QCoro5::;g' src/CMakeLists.txt
+  '';
+
   meta = with lib; {
     description = "SMS application for Plasma Mobile";
     homepage = "https://invent.kde.org/plasma-mobile/spacebar";

@dotlambda dotlambda force-pushed the plasma-mobile-gear-21.12 branch from 21fab01 to cb0ed51 Compare May 10, 2022 05:46
@dotlambda dotlambda changed the title libsForQt5.plasmaMobileGear: 21.08 -> 21.12 libsForQt5.plasmaMobileGear: 21.08 -> 22.04 May 10, 2022
@dotlambda dotlambda added this to the 22.05 milestone May 10, 2022
@ofborg ofborg bot removed the request for review from mjlbach May 10, 2022 06:07
Copy link
Contributor

@Mindavi Mindavi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Diff LGTM, if I find some time I might try building and running this on my pinephone.

qcoro is broken, that's a shame...

Build failure in audiotube:

audiotube> /build/audiotube-22.04/build/src/audiotube_autogen/EWIEGA46WW/../../../../src/multiiterableview.h:9:10: fatal error: span: No such file or directory
audiotube>     9 | #include <span>
audiotube>       |          ^~~~~~
audiotube> compilation terminated.
audiotube> make[2]: *** [src/CMakeFiles/audiotube.dir/build.make:89: src/CMakeFiles/audiotube.dir/audiotube_autogen/mocs_compilation.cpp.o] Error 1

Angelfish build is also broken

Will try to build everything tonight, hopefully can report back tomorrow or the day after. (No need to hold up merging)

Aww, OOM killer killed the build, retrying...

@dotlambda
Copy link
Member Author

Result of nixpkgs-review pr 153329 run on x86_64-linux 1

36 packages marked as broken and skipped:
  • libsForQt512.alligator
  • libsForQt512.angelfish
  • libsForQt512.audiotube
  • libsForQt512.calindori
  • libsForQt512.kalk
  • libsForQt512.kasts
  • libsForQt512.kclock
  • libsForQt512.keysmith
  • libsForQt512.koko
  • libsForQt512.krecorder
  • libsForQt512.ktrip
  • libsForQt512.kweather
  • libsForQt512.neochat
  • libsForQt512.plasma-dialer
  • libsForQt512.plasma-phonebook
  • libsForQt512.plasma-settings
  • libsForQt512.plasmatube
  • libsForQt512.spacebar
  • libsForQt514.alligator
  • libsForQt514.angelfish
  • libsForQt514.audiotube
  • libsForQt514.calindori
  • libsForQt514.kalk
  • libsForQt514.kasts
  • libsForQt514.kclock
  • libsForQt514.keysmith
  • libsForQt514.koko
  • libsForQt514.krecorder
  • libsForQt514.ktrip
  • libsForQt514.kweather
  • libsForQt514.neochat
  • libsForQt514.plasma-dialer
  • libsForQt514.plasma-phonebook
  • libsForQt514.plasma-settings
  • libsForQt514.plasmatube
  • libsForQt514.spacebar
22 packages built:
  • corrosion
  • libsForQt5.alligator (libsForQt515.alligator ,plasma5Packages.alligator)
  • libsForQt5.angelfish (libsForQt515.angelfish ,plasma5Packages.angelfish)
  • libsForQt5.audiotube (libsForQt515.audiotube ,plasma5Packages.audiotube)
  • libsForQt5.calindori (libsForQt515.calindori ,plasma5Packages.calindori)
  • libsForQt5.kalk (libsForQt515.kalk ,plasma5Packages.kalk)
  • libsForQt5.kasts (libsForQt515.kasts ,plasma5Packages.kasts)
  • libsForQt5.kclock (libsForQt515.kclock ,plasma5Packages.kclock)
  • libsForQt5.keysmith (libsForQt515.keysmith ,plasma5Packages.keysmith)
  • libsForQt5.koko (libsForQt515.koko ,plasma5Packages.koko)
  • libsForQt5.krecorder (libsForQt515.krecorder ,plasma5Packages.krecorder)
  • libsForQt5.ktrip (libsForQt515.ktrip ,plasma5Packages.ktrip)
  • libsForQt5.kweather (libsForQt515.kweather ,plasma5Packages.kweather)
  • libsForQt5.neochat (libsForQt515.neochat ,plasma5Packages.neochat)
  • libsForQt5.plasma-dialer (libsForQt515.plasma-dialer ,plasma5Packages.plasma-dialer)
  • libsForQt5.plasma-phonebook (libsForQt515.plasma-phonebook ,plasma5Packages.plasma-phonebook)
  • libsForQt5.plasma-settings (libsForQt515.plasma-settings ,plasma5Packages.plasma-settings)
  • libsForQt5.plasmatube (libsForQt515.plasmatube ,plasma5Packages.plasmatube)
  • libsForQt5.qtmpris (libsForQt515.qtmpris ,plasma5Packages.qtmpris)
  • libsForQt5.spacebar (libsForQt515.spacebar ,plasma5Packages.spacebar)
  • libsForQt512.qtmpris
  • libsForQt514.qtmpris

@dotlambda
Copy link
Member Author

dotlambda commented May 13, 2022

Build failure in audiotube

Must be because aarch64 is still on GCC 9.3.0. See #108305 and #167726.

@dotlambda
Copy link
Member Author

Result of nixpkgs-review pr 153329 run on aarch64-linux 1

42 packages marked as broken and skipped:
  • libsForQt5.neochat
  • libsForQt5.spacebar
  • libsForQt512.alligator
  • libsForQt512.angelfish
  • libsForQt512.audiotube
  • libsForQt512.calindori
  • libsForQt512.kalk
  • libsForQt512.kasts
  • libsForQt512.kclock
  • libsForQt512.keysmith
  • libsForQt512.koko
  • libsForQt512.krecorder
  • libsForQt512.ktrip
  • libsForQt512.kweather
  • libsForQt512.neochat
  • libsForQt512.plasma-dialer
  • libsForQt512.plasma-phonebook
  • libsForQt512.plasma-settings
  • libsForQt512.plasmatube
  • libsForQt512.spacebar
  • libsForQt514.alligator
  • libsForQt514.angelfish
  • libsForQt514.audiotube
  • libsForQt514.calindori
  • libsForQt514.kalk
  • libsForQt514.kasts
  • libsForQt514.kclock
  • libsForQt514.keysmith
  • libsForQt514.koko
  • libsForQt514.krecorder
  • libsForQt514.ktrip
  • libsForQt514.kweather
  • libsForQt514.neochat
  • libsForQt514.plasma-dialer
  • libsForQt514.plasma-phonebook
  • libsForQt514.plasma-settings
  • libsForQt514.plasmatube
  • libsForQt514.spacebar
  • libsForQt515.neochat
  • libsForQt515.spacebar
  • plasma5Packages.neochat
  • plasma5Packages.spacebar
2 packages failed to build:
  • libsForQt5.angelfish (libsForQt515.angelfish ,plasma5Packages.angelfish)
  • libsForQt5.audiotube (libsForQt515.audiotube ,plasma5Packages.audiotube)
14 packages built:
  • libsForQt5.alligator (libsForQt515.alligator ,plasma5Packages.alligator)
  • libsForQt5.calindori (libsForQt515.calindori ,plasma5Packages.calindori)
  • libsForQt5.kalk (libsForQt515.kalk ,plasma5Packages.kalk)
  • libsForQt5.kasts (libsForQt515.kasts ,plasma5Packages.kasts)
  • libsForQt5.kclock (libsForQt515.kclock ,plasma5Packages.kclock)
  • libsForQt5.keysmith (libsForQt515.keysmith ,plasma5Packages.keysmith)
  • libsForQt5.koko (libsForQt515.koko ,plasma5Packages.koko)
  • libsForQt5.krecorder (libsForQt515.krecorder ,plasma5Packages.krecorder)
  • libsForQt5.ktrip (libsForQt515.ktrip ,plasma5Packages.ktrip)
  • libsForQt5.kweather (libsForQt515.kweather ,plasma5Packages.kweather)
  • libsForQt5.plasma-dialer (libsForQt515.plasma-dialer ,plasma5Packages.plasma-dialer)
  • libsForQt5.plasma-phonebook (libsForQt515.plasma-phonebook ,plasma5Packages.plasma-phonebook)
  • libsForQt5.plasma-settings (libsForQt515.plasma-settings ,plasma5Packages.plasma-settings)
  • libsForQt5.plasmatube (libsForQt515.plasmatube ,plasma5Packages.plasmatube)

@dotlambda dotlambda force-pushed the plasma-mobile-gear-21.12 branch 2 times, most recently from 8a4b98d to 34da6a8 Compare May 13, 2022 17:16
@dotlambda dotlambda requested a review from Mindavi May 13, 2022 17:35
@Mindavi
Copy link
Contributor

Mindavi commented May 13, 2022

Heh, does just adding gcc11 work? I wouldn't expect so...

@Mindavi
Copy link
Contributor

Mindavi commented May 13, 2022

@ofborg build libsForQt515.audiotube

@SuperSandro2000
Copy link
Member

Heh, does just adding gcc11 work? I wouldn't expect so...

I think we want to use gcc11Stdenv instead.

@dotlambda
Copy link
Member Author

Heh, does just adding gcc11 work? I wouldn't expect so...

It does:

-- The C compiler identification is GNU 11.3.0

I think we want to use gcc11Stdenv instead.

I don't know how because of the special libsForQt5.mkDerivation. Just adding gcc11 to nativeBuildInputs was a simple solution and it works.

@Mindavi
Copy link
Contributor

Mindavi commented May 13, 2022

So the diff LGTM, not sure if can properly test otherwise since I'm having trouble with getting any useful output when trying to enable a display manager. It's probably due to an unrelated bug somewhere :(.

Just to have it noted somewhere, for some reason the users belonging to the modules (sddm, lightdm) are not created at all...

Thanks a lot for taking care of these packages!

@dotlambda
Copy link
Member Author

Result of nixpkgs-review pr 153329 run on aarch64-linux 1

32 packages marked as broken and skipped:
  • libsForQt512.alligator
  • libsForQt512.angelfish
  • libsForQt512.audiotube
  • libsForQt512.calindori
  • libsForQt512.kalk
  • libsForQt512.kasts
  • libsForQt512.kclock
  • libsForQt512.keysmith
  • libsForQt512.koko
  • libsForQt512.krecorder
  • libsForQt512.ktrip
  • libsForQt512.kweather
  • libsForQt512.plasma-dialer
  • libsForQt512.plasma-phonebook
  • libsForQt512.plasma-settings
  • libsForQt512.plasmatube
  • libsForQt514.alligator
  • libsForQt514.angelfish
  • libsForQt514.audiotube
  • libsForQt514.calindori
  • libsForQt514.kalk
  • libsForQt514.kasts
  • libsForQt514.kclock
  • libsForQt514.keysmith
  • libsForQt514.koko
  • libsForQt514.krecorder
  • libsForQt514.ktrip
  • libsForQt514.kweather
  • libsForQt514.plasma-dialer
  • libsForQt514.plasma-phonebook
  • libsForQt514.plasma-settings
  • libsForQt514.plasmatube
20 packages built:
  • corrosion
  • libsForQt5.alligator
  • libsForQt5.angelfish
  • libsForQt5.audiotube
  • libsForQt5.calindori
  • libsForQt5.kalk
  • libsForQt5.kasts
  • libsForQt5.kclock
  • libsForQt5.keysmith
  • libsForQt5.koko
  • libsForQt5.krecorder
  • libsForQt5.ktrip
  • libsForQt5.kweather
  • libsForQt5.plasma-dialer
  • libsForQt5.plasma-phonebook
  • libsForQt5.plasma-settings
  • libsForQt5.plasmatube
  • libsForQt5.qtmpris
  • libsForQt512.qtmpris
  • libsForQt514.qtmpris

@dotlambda
Copy link
Member Author

@samueldr Any objection to me merging this?

@Mindavi Mindavi mentioned this pull request May 16, 2022
13 tasks
@dotlambda dotlambda force-pushed the plasma-mobile-gear-21.12 branch from 34da6a8 to 7959f24 Compare May 16, 2022 17:47
@dotlambda
Copy link
Member Author

@andrevmatos Do you want me to add you as maintainer of something?

@andrevmatos
Copy link
Member

@dotlambda I just tried my hand on this update to split the fixes broken by my try at #173266 ; eventually, I'd like to join @NixOS/qt-kde , as like to help keep KDE packages up to date; I don't have a direct interest on any specific package on this PR, but feel free to pull me in however I can help =)

@andrevmatos andrevmatos mentioned this pull request May 17, 2022
13 tasks
@dotlambda dotlambda merged commit 1550635 into NixOS:master May 17, 2022
@dotlambda dotlambda deleted the plasma-mobile-gear-21.12 branch May 17, 2022 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8.has: clean-up 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 11-100
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants